class opt_feat
{
public:  
    inline opt_feat(const std::string  in_path, 
		    const std::string  in_actionNames, 
		    const std::string  in_feat_path,
		    const int in_col, 
		    const int in_row);
    
    
    inline void training();
    inline void testing();
    

    
double THRESH;
const std::string path;
const std::string actionNames;
const std::string feat_path;

const int row;
const int col;

const int n_samples_tr; //# samples training
const int n_samples_te; //# samples testing

std::vector< mat > covs;
int num_covs;

field<std::string> actions;
field<std::string> videos;



const field<mat> riemann_points;
int N_points;
int dim; 
  

  private:
  inline void cov_features(std::string one_video);
  inline void calc_features();
  inline void saving(std::string cov_feat_name);
  
};